package titiriteroModificado;

import java.awt.Component;
import java.util.ArrayList;

import juego.Caza;
import juego.Coordinador;
import juego.Movil;
import juego.Tripulado;
import probandoTitiritero.Fondo;
import titiriteroModificado.vista.KeyPressedControllerModificado;
import vista.VistaFondo1;
import ar.uba.fi.algo3.titiritero.SuperficieDeDibujo;

public class Juego {
	
	private ControladorJuegoModificado controlador = null;
	private Fondo unFondo;
	private Tripulado algo42;
	private Caza unCaza;
	private VistaFondo1 vistaFondo;

	 
	public Juego(SuperficieDeDibujo superficieDeDibujo){
		
		unFondo = new Fondo(200,200);
	    vistaFondo = new VistaFondo1();
	    vistaFondo.setPosicionable(unFondo);
	    algo42 = new Tripulado();
	    controlador = new ControladorJuegoModificado(false,algo42,vistaFondo);
	    controlador.setSuperficieDeDibujo(superficieDeDibujo);
	    ((Component) superficieDeDibujo).addKeyListener(new KeyPressedControllerModificado(controlador));
	    controlador.agregarKeyPressObservador(new EscuchadorDeKeyPress(algo42,controlador));
	    controlador.agregarMouseClickObservador(vistaFondo);
	    controlador.setIntervaloSimulacion(100);    
	}

	 public void comenzar(){
         controlador.comenzarJuegoAsyn();
	 }
	 
     public void detener() {
         controlador.detenerJuego();
     }
     
     public void guardar() {
         controlador.guardarDatos();
     }
     
     public void cargar(SuperficieDeDibujo superficieDeDibujo) { 
    	Coordinador c = controlador.cargarDatos();
    	controlador.agregarCoordinador(c);
        controlador.comenzarJuegoAsyn();
     }
     
}

